The rapid development in the recent decade of computer technologies, including cloud technologies, and the widespread use of different kinds of computing devices (personal computers, notebooks, tablets, smartphones, and so on) has served as a powerful stimulus for the use of these devices in every possible sphere of human activity and for a huge number of tasks (from Internet surfing and Internet communication to bank transfers and electronic document distribution). In parallel with the growth in the number of computing devices, the volume of software working on these devices has also grown at a fast pace, including illegal software and malicious programs.
At present, there exists a huge number of malicious program varieties. Some of them steal personal and confidential data from users' devices (such as logins and passwords, banking information, electronic documents). Others form so-called botnets to retrieve passwords from users' devices by the method of brute force, or launch attacks such as denials of service (DDOS) to other computers or computer networks. Further malicious programs sign users up for paid content through aggressive advertising, paid subscriptions, sending of SMSs to paid phone numbers, and so on.
Antivirus programs are used to deal with malicious programs. Dealing effectively with malicious programs requires first of all a timely detection of files containing code of malicious programs, for which the antivirus programs employ various technologies such as signature, heuristic, and proactive analysis, white and black lists, and so on. Each of the aforementioned technologies has its own effectiveness for detecting malicious files, consisting of the potential ability to detect certain kinds of malicious files and requirements for the computing resources of the computer system on which said technologies operate.
Currently, the volumes of data (including files) which are processed by computer systems are so large that their scanning for maliciousness by antivirus programs may take a substantial amount of time and require significant computing resources, which is especially critical for users of personal computers. Therefore, to increase the effectiveness of detecting malicious files one uses in particular methods of increasing the computing resources of computer systems on which a search for malicious files is being done. For this purpose, one uses distributed systems to search for malicious files, consisting of several servers, on each of which a scanning is done for only some of the files needing to be scanned.
Although the known work methods deal well with the tasks of a distributed scanning of files for maliciousness, they are often of no help when there is a heavy workload on the computer systems performing the scanning of files for maliciousness or when there is a malfunction in the work of certain computer systems taking part in the scanning of files for maliciousness.